MicroPython动手做(23)

您所在的位置:网站首页 无线路由器 AP模式 wifi名称 MicroPython动手做(23)

MicroPython动手做(23)

2024-07-06 16:35| 来源: 网络整理| 查看: 265

MicroPython动手做(23)——掌控板之WiFi与蓝牙图1

4、掌控板的ubluetooth --- 低功耗蓝牙

该模块提供低功耗蓝牙控制接口。当前,它在中央,外围设备,广播和观察者角色中支持蓝牙低功耗(BLE),并且设备可以同时在多个角色中运行。

此API旨在与低功耗蓝牙协议相匹配,并为更高级的抽象(如特定的设备类型)提供构建模块。

注解

该模块仍在开发中,其类,功能,方法和常量可能会发生变化。

BLE 类

构建

class ubluetooth.BLE

返回 BLE 对象

配置

BLE.active([active])

(可选)更改BLE无线电的活动状态,并返回当前状态。

在使用此类的任何其他方法之前,必须使无线电处于活动状态。

BLE.config('param')

BLE.config(param=value, ...)

获取或设置BLE接口的配置值。为了获得一个值,参数名称应该用字符串引号,并且一次只查询一个参数。要设置值,请使用关键字语法,一次可以设置一个或多个参数。

当前支持的值为:

'mac': 返回设备的MAC地址。如果设备具有固定地址(例如PYBD),则将其返回。否则(例如ESP32),当BLE接口处于活动状态时,将生成一个随机地址。

'rxbuf': 设置用于存储传入事件的内部缓冲区的大小(以字节为单位)。该缓冲区是整个BLE驱动程序的全局缓冲区,因此可以处理所有事件(包括所有特征)的传入数据。增加此值可以更好地处理突发的传入数据(例如,扫描结果),并可以使中央设备接收较大的特征值。

事件处理

BLE.irq(handler, trigger=0xffff)

为BLE堆栈中的事件注册回调。handler接收两个参数,event (看下文的事件代码)和 data (其是值的特定事件元组)。

可选的 trigger 参数允许您设置程序感兴趣的事件的掩码。默认值为所有事件。

注: addr, adv_data 和 uuid 元组中的项是引用的数据管理 ubluetooth 模块(即相同的实例将被重新使用多次调用到事件处理程序)。 如果您的程序想在处理程序之外使用此数据,则它必须首先复制它们,例如使用 bytes(addr) or bluetooth.UUID(uuid) 。

广播者(Advertiser)

BLE.gap_advertise(interval_us, adv_data=None, resp_data=None, connectable=True)

以指定的时间间隔(以微秒为单位)开始广播。该间隔将四舍五入到最接近的625微妙。要停止广播,请将 interval_us 设置 为None。

adv_data 和 resp_data 可以是任何 buffer 类型 (例如 bytes, bytearray, str)。 adv_data 包含在所有广播中,并发送 resp_data 以应答有效的扫描。

注意:如果 adv_data (或 resp_data )为None,则将重用传递到上一个调用的数据 gap_advertise 。 这样一来,广播者就可以使用来恢复广播 gap_advertise(interval_us) 。为了清除广播负载,传递一个空的bytes,即b''。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3